Starting with homework 1, we will be using git and GitHub to get your homework assignment, work on your homework, and submit your homework solutions. This tutorial will walk you through that process using git and GitHub.
First, download GitHub desktop here, and install it on your computer.
During installation, you will have to choose a repository. Your available repositories should be shown on the left side of the screen when you open GitHub desktop.
The link for each homework assignment will be available on the Lectures tab of the course website. For this demo, click this link. After clicking on the link, something like this should pop up:
After clicking the link, the assignment repository should show up with the instructions and all necessary files. An example of what this will look like is here:
This will open GitHub desktop and you should see this window pop up:
Once you have a local copy of your repository, it’s time to get to work!
After writing some of your homework in an Rmd file, kniting it, making pretty plots, and finding out some cool stuff about the dataset, it’s time to commit/push.
commit. You should also include a description of the commit in the summary box. It’s not shown in this picture, but my description for this commit was ‘Answered problem 1’. This description will show up later.Cool! Now that we’ve saved our work on our local directory, we can now push our work to GitHub.
Note, we can (and should) do this as many times as we want before the homework deadline. What is great about this is that it will make getting help from your TA easier as well as keeping a copy of your work in the cloud in case your computer crashes, or you accidentally delete something.
pushed. Note that the description I used, ‘Answered problem 1’, appears before the README.md file, and the time stamp also appears on the right side of the screen. I have successfully pushed my assignment.From the course syllabus:
Each student is given six late days for homework at the beginning of the semester. A late day extends the individual homework deadline by 24 hours without penalty. No more than two late days may be used on any one assignment. Assignments handed in more than 48 hours after the original deadline will not be graded. We do not accept any homework under any circumstances more than 48 hours after the original deadline. Late days are intended to give you flexibility: you can use them for any reason no questions asked. You don’t get any bonus points for not using your late days. Also, you can only use late days for the individual homework deadlines all other deadlines (e.g., project milestones) are hard.
We made this policy because we understand that you are all busy and things happen. We hope that this added flexibility makes gives you the freedom to enjoy the courses and engage with the material fully.
To be fair to all the students we have to enforce this late day policy, so we have put together a list of things to consider near the deadline.
Say the homework is due Sunday at 11:59 pm.
commits after the deadline we will take the last commit as your final submission.commit is showing on your Github repo page. “I forgot to push” is not an acceptable excuse for late work.commits after the deadline we will take the last commit up to Tuesday at 11:59 pm as the final version.commit.commit or push any more. If you commit and push after the deadline you will be charged a late day. This is strict.git-ing